/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package app.negocio;

import app.modelo.Libro;
import app.persistencia.ItfzLibrosDAO;
import app.persistencia.LibrosDAO;
import java.util.List;

/**
 * Clase que implementa la interface <code>ItfzGestionLibreria</code>.
 * <p>
 * Se acceder&aacute; a la capa de persistencia desde la interfaz
 * <code>ItfzLibrosDAO</code></p>
 *
 * @author Johann Pando
 */
public class GestionLibreria implements ItfzGestionLibreria {

    private ItfzLibrosDAO itfzLibrosDAO;

    public GestionLibreria() {
        itfzLibrosDAO = new LibrosDAO();
    }

    @Override
    public boolean altaLibro(Libro libro) {
        return itfzLibrosDAO.altaLibro(libro);
    }

    @Override
    public boolean eliminarLibro(int id) {
        return itfzLibrosDAO.eliminarLibro(id);
    }

    @Override
    public List<Libro> consultarTodos() {
        return itfzLibrosDAO.consultarTodos();
    }

    @Override
    public Libro consultarISBN(String isbn) throws LibroNoEncontradoException {
        return itfzLibrosDAO.consultarISBN(isbn);
    }

    @Override
    public List<Libro> consultarTitulo(String titulo) throws LibroNoEncontradoException {
        return itfzLibrosDAO.consultarTitulo(titulo);
    }

    @Override
    public boolean modificarPrecio(String isbn, double precio) {
        return itfzLibrosDAO.modificarPrecio(isbn, precio);
    }
    
     @Override
    public List<String> cargarAutores() {
        return itfzLibrosDAO.cargarAutores();
    }

    @Override
    public List<String> cargarEditoriales() {
        return itfzLibrosDAO.cargarEditoriales();
    }
    
    @Override
    public List<Libro> cargaLibrosPorAutor(String autor) {
        return itfzLibrosDAO.cargaLibrosPorAutor(autor);
    }

    public ItfzLibrosDAO getItfzLibrosDAO() {
        return itfzLibrosDAO;
    }

    public void setItfzLibrosDAO(ItfzLibrosDAO itfzLibrosDAO) {
        this.itfzLibrosDAO = itfzLibrosDAO;
    }

    @Override
    public List<Libro> cargaLibrosPorEditorial(String editorial) {
        return itfzLibrosDAO.cargaLibrosPorEditorial(editorial);
    }
}
